iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0

就是大家一定會有個疑問,使用api的時候什麼會有這麼多奇怪的值{"role": "system"},然後程式碼裡的message為什麼會是這樣寫呢?而平常我們真正使用的時候都只是直接輸入內容而已!

以下為OpenAI API範例:

messages=[
        {"role": "system", "content": "你是一名詩人。"},
        {
            "role": "user",
            "content": "可以幫我寫有關於感情的五言絕句嗎?"
        }
    ]

各位跟我想的一樣(我自己在幻想XD),就是要給AI一點提示詞(prompt),不知道各位有沒有曾經發現AI有時候說的會是幻覺或是說錯呢?,所以我們要清楚的讓AI知道需求是什麼,所以就延伸提示詞的設計,更快速的讓AI判斷我們真正想表達的是什麼!

舉個例子:

我今天想學程式,請問要學什麼語言?

當你問了AI上述的話,可能會得到一本正經的廢話,可能AI會叫你學VB或是Cobol這些非主流語言也說不定,這時候新手小白相信AI的話,大家都會覺得你學這些程式語言很偉大XD

所以Google提出了幾個設計要點,針對以下給推薦及不推薦的例子讓大家感受一下:

1.簡潔

有時候過於冗長的內容,但是問題就是很簡單可能會導致AI無法精准判斷。

推薦:
"總結這篇文章的主要論點。"
不推薦:
"請仔細閱讀我發送給你的這篇文章,然後用你自己的話來概括其中的主要觀點和論據,確保你的總結既全面又簡潔,不要遺漏任何重要細節,同時也不要添加文章中沒有的信息。"

2.具體且明確

假設你的問題是一個很廣泛的問題那麼AI會很難去定義。

推薦:
"寫一個300字的短文,描述氣候變化對北極熊的影響。"

不推薦:
"寫一篇關於動物的文章。"

3.一次做一項工作

不要同時問很多不相干的問題,不然可能會影響AI思考。

推薦:
"為什麼天空是藍色的?"

不推薦:
"為什麼天空是藍色的?1+1=?"

4.幻覺防範

不要對AI問奇怪的問題。

第一個上月球的大象是誰等等之類的(現在訓練好的模型可能不會有這種問題),所以一些明知道不可能或是奇怪的問題還是盡量別問!

5.生成式工作轉換為分類工作,減少輸出變化

把範圍限縮,這樣可以讓AI更精准的的回答。

推薦:

"我是程式新手,推薦我學習的程式語言!1.Python、 2.JavaScript、3.Java,並說為什麼"

不推薦:

"我是新手小白,推薦我程式語言~"

解說完後大家對提示詞設計是否有感覺了~

上述在Google有專門對提示詞的設計教學且是免費資源,大家不妨也可以去學習一下!

參考資料:https://www.cloudskillsboost.google/paths/118/course_templates/976/labs/489805?locale=zh_TW


上一篇
Day3 LLM API使用
下一篇
Day5 LangChain 介紹
系列文
AI的雲上漫遊30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言